A Calculus for Link-Time Compilation

نویسندگان

  • Elena Machkasova
  • Franklyn A. Turbak
چکیده

We present a module calculus for studying a simple model of link-time compilation. The calculus is stratified into a term calculus, a core module calculus, and a linking calculus. At each level, we show that the calculus enjoys a computational soundness property: if two terms are equivalent in the calculus, then they have the same outcome in a smallstep operational semantics. This implies that any module transformation justified by the calculus is meaning preserving. This result is interesting because recursive module bindings thwart confluence at two levels of our calculus, and prohibit application of the traditional technique for showing computational soundness, which requires confluence. We introduce a new technique, based on properties we call lift and project, that uses a weaker notion of confluence with respect to evaluation to establish computational soundness for our module calculus. We also introduce the weak distributivity property for a transformation T operating on modules D1 and D2 linked by ⊕: T (D1 ⊕D2) = T (T (D1) ⊕ T (D2)). We argue that this property finds promising candidates for link-time optimizations.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Computationally Sound Call-By-Value Module Calculus

We present a call-by-value module calculus that serves as a framework for formal reasoning about simple module transformations. The calculus is stratified into three levels: a term calculus, a core module calculus, and a linking calculus. At each level, we define both a calculus reduction relation and a small-step operational semantics and relate them by a computational soundness property: if t...

متن کامل

Exact Kanowledge Compilation in Predicate Calculus: The Partial Achievement Case

Forward chaining is an inference algorithm based on modus ponens which is widely used but unfortunately incomplete with respect to the usual boolean logic. A solution to this incompleteness is to compile the knowledge base so that forward chaining becomes complete for any base of facts. This compilation is called achievement and was so far restricted to propositional calculus. In this paper, we...

متن کامل

A Kind of Logical Compilation for Knowledge Bases

Mathieu, Ph. and J.-P. Delahaye, A kind of logical compilation for knowledge bases, Theoretical Computer Science 131 (1994) 197-218. The forward chaining algorithm is perhaps the best-known algorithm in expert systems. However, it is not complete because it cannot compute the two-valued consequence literals of a propositional knowledge base (i.e. set of rules) with negations. If the user wants ...

متن کامل

Compile!

This paper is concerned with knowledge compilation (KC), a family of approaches developed in AI for more than twenty years. Knowledge compilation consists in pre-processing some pieces of the available information in order to improve the computational efficiency (especially, the time complexity) of some tasks. In this paper, the focus is laid on three KC topics which gave rise to many works: th...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2000